package com.tedu.api.d4_io;

import java.io.File;
import java.io.IOException;
import java.util.Arrays;

/*
  本类用于测试文件流
 */
public class Test1_File {
    public static void main(String[] args) throws Exception  {
        //创建File对象
        /**
         *  \ 转义符号
         *
         */
        File file = new File("D:\\ready\\1.txt");
        //测试常用方法
        //1.文件与文件夹的属性
        System.out.println(file.length());//获取字节量
        System.out.println(file.exists());//判断是否存在
        System.out.println(file.isFile());//判断是否为文件
        System.out.println(file.isDirectory());//判断是否为文件夹
        System.out.println(file.getName());//获取文件名
        System.out.println(file.getParent());//获取父级目录
        System.out.println(file.getAbsolutePath());//获取绝对路径
        System.out.println("==============================");
        //2.创建与删除

        file=new File("D:\\ready\\2.txt");//创建一个文件
        try{
            System.out.println(file.createNewFile());
        }catch (Exception e){
            System.out.println("文件不存在");
        }

        file=new File("D:\\ready\\m");
        System.out.println(file.mkdir());//创建一个文件夹

        file=new File("D:\\ready\\a\\b\\c");
        System.out.println(file.mkdirs());//创建多级文件夹

        System.out.println(file.delete());//c文件夹被删除

        file= new File("D:\\ready\\a");
        System.out.println(file.delete());//a文件夹里还有b文件夹，所以删除不了b

        //3.文件列表

        file=new File("D:\\ready");
        String[] list = file.list();
        System.out.println(Arrays.toString(list));
        /*
         列出文件夹中所有的文件  返回值File[];
         数组中每个元素都是File对象，可进行操作
         */
        File[] listFiles=file.listFiles();
        System.out.println(Arrays.toString(listFiles));
        System.out.println(listFiles[0].length());//长度，字节量




    }
}
